\documentclass{article}
\usepackage{silaboUNSA}

\year{2008-B}

\course{Estructuras de Datos 1}
\courseCode{02-014}
\credits{4 (Cuatro)}
\semester{III}
\prerequisites{0201210,0201211}
\weekTime{6}
\T{2}
\TP{2}
\P{2}
\S{0}

%descomentar el día adecuado e indicar el salón
%\monday{14:00-15:30}{201}
%\tuestday{}{}
\wednesday{8:45-10:15}{301}
\thursday{17:00-18:30}{301}
%\friday{}{}
%\saturday{}{}

\teacher{Alfredo Paz-Valderrama}
%\teacherDegree{Bachiller}
\profession{Ingeniero de Sistemas}

\begin{document}

\maketitle

\begin{data} 
   \makeData
\end{data}

\begin{motivation}
Los Algoritmos y Estrucuras de datos, son fundamentales para la ciencia de computacion y la ingenierıa del software. El rendimiento, en el mundo real, de cualquier sistema de software depende solo de dos cosas: (1) Los algoritmos y estructuras de datos que se usan y (2) la conveniencia y eficiencia de varias capas de implementación.

\begin{flushleft}ACM/IEEE (C) Computer Curricula 2001\end{flushleft}

\end{motivation}

\begin{objective}
Estudiar el diseño e implementacion de estructuras de datos basicas, incluyendo el análisis de su desempeño.
\end{objective}


\begin{temas}
   \unit{Introducción a la Programación}
   {
      \obj Revisar algunas técnicas de programación básicas.
   }
   {
      \tema Técnicas básicas de programación.
      \tema Nociones básicas de verificación de programas.
      \tema Recursividad.
      \tema Programación Orientada a Objetos.
      \tema Programación Genérica.
      \tema Medición de la eficiencia de los algoritmos.
      \tema Notación $O$

      \begin{lecturas}
         \obligatoria{generic, javaTutorial, Cormen01}
         \sugerida{Knuth98}
      \end{lecturas}
   }
   {\hrs 8}
   {\fecha 24, 25 Septiembre; 1, 2 Octubre}
   {\porc 15}

   \unit{Tipos de Datos Abstractos}
   {
      \obj Diseñar, implementar y analizar estructuras de datos básicas de manera independiente al tipo de datos utilizado.
   }{
      \tema Tipos de Datos Abstractos.
      \tema Arreglos, punteros y Pilas.
      \tema Listas y Colas.
      \tema Árboles: binarios, AVL, 2-3, Rojinegros, B, digitales.
      \tema Hashing.
      \tema Grafos: representación, recorridos, algoritmo de Kruskal, algoritmo de Prim, algoritmo de Dijkstra.
      \begin{lecturas}
         \obligatoria{Cormen01}
         \sugerida{Knuth98, aho1983, stanfordC, stanfordPointers, kernighan98}
      \end{lecturas}
   }
   {\hrs 44}
   {\fecha 8, 9, 15, 16, 22, 23, 29, 30 Octubre; 5, 6, 12, 13, 19, 20, 26, 27 Noviembre; 3, 4, 10, 11, 17, 18 Diciembre}
   {\porc 70}

   \unit{Algoritmos de Búsqueda en texto}
   {
      \obj Evaluar distintos algoritmos para la búsqueda de patrones en texto.
   }{
      \tema Fuerza bruta.
      \tema Algoritmo de Knuth-Morris-Pratt.
      \tema Algoritmo de Boyer Moore.
      \begin{lecturas}
         \obligatoria{Cormen01}
         \sugerida{Knuth98, aho1983}
      \end{lecturas}
   }
   {\hrs 4}
   {\fecha 24, 31  Diciembre}
   {\porc 100}

\end{temas}

\begin{actividades}
   \act Tareas
   \act Controles de lectura
   \act Exposiciones.
\end{actividades}

\begin{recursos}
   \rec Página web y lista de interés.\\
      \url{http://groups.google.com/group/episunsa-ed1}
   \rec Material del MIT\\
      \url{http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-046JFall-2005/ LectureNotes/index.htm}
   \rec Apuntes de Patricio Poblete\\
      \url{http://www.dcc.uchile.cl/~cc30a/apuntes/}
\end{recursos}

\begin{bibliografia}
\end{bibliografia}

\begin{metodologia}
El curso buscará propiciar el construccionismo y social-construccionismo.
\end{metodologia}


\begin{evaluacion}
La nota final (NF) se obtiene de la siguiente manera
\begin{description}
\item[NE] Nota de Examenes 45 \%, esta nota se divide en
   \begin{itemize}
   \item Examen Parcial 40 \%
   \item Examen Final 60 \%
   \end{itemize}
\item[NT] Nota de Trabajos e Intervencion en clase 25 \%
\item[NP] Nota del proyecto de curso 30\%
\end{description}

\begin{math}
NF = 0,35 ∗ NE + 0,35 ∗ NT + 0,3 ∗ NP 
\end{math}


\end{evaluacion}

\date{Septiembre del 2008}

\end{document}
